{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# In this notebook, we redo the analysis of chapter 8, but in Keras instead of scikit-learn\n",
    "# Much of the initial dataset-building code is from there."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import numpy as np \n",
    "from PIL import Image, ImageDraw, ImageFont \n",
    "from skimage import transform as tf"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def create_captcha(text, shear=0, size=(100, 30), scale=1):\n",
    "    im = Image.new(\"L\", size, \"black\")\n",
    "    draw = ImageDraw.Draw(im)\n",
    "    font = ImageFont.truetype(r\"bretan/Coval-Black.otf\", 22) \n",
    "    draw.text((0, 0), text, fill=1, font=font)\n",
    "    image = np.array(im)\n",
    "    affine_tf = tf.AffineTransform(shear=shear)\n",
    "    image = tf.warp(image, affine_tf)\n",
    "    image = image / image.max()\n",
    "    shape = image.shape\n",
    "    # Apply scale\n",
    "    shapex, shapey = (shape[0] * scale, shape[1] * scale)\n",
    "    image = tf.resize(image, (shapex, shapey))\n",
    "    return image"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x7feaa00e5198>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (http://matplotlib.org/) -->\n",
       "<svg height=\"130pt\" version=\"1.1\" viewBox=\"0 0 365 130\" width=\"365pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <defs>\n",
       "  <style type=\"text/css\">\n",
       "*{stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:100000;}\n",
       "  </style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 130.567187 \n",
       "L 365.925 130.567187 \n",
       "L 365.925 0 \n",
       "L 0 0 \n",
       "L 0 130.567187 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 23.925 109.689062 \n",
       "L 358.725 109.689062 \n",
       "L 358.725 9.249062 \n",
       "L 23.925 9.249062 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p93773408f1)\">\n",
       "    <image height=\"101.0\" id=\"imagec210fdf637\" width=\"336.0\" x=\"23.925\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"8.6890625\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 23.925 9.249062 \n",
       "L 358.725 9.249062 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 23.925 109.689062 \n",
       "L 23.925 9.249062 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 23.925 109.689062 \n",
       "L 358.725 109.689062 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 358.725 109.689062 \n",
       "L 358.725 9.249062 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 -4 \n",
       "\" id=\"mdcb9a16d08\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"26.715\" xlink:href=\"#mdcb9a16d08\" y=\"109.6890625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_2\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 4 \n",
       "\" id=\"m8a7627d3bb\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"26.715\" xlink:href=\"#m8a7627d3bb\" y=\"9.2490625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <defs>\n",
       "       <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "\" id=\"BitstreamVeraSans-Roman-30\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(23.53375 121.2875)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"82.515\" xlink:href=\"#mdcb9a16d08\" y=\"109.6890625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"82.515\" xlink:href=\"#m8a7627d3bb\" y=\"9.2490625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 10 -->\n",
       "      <defs>\n",
       "       <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"BitstreamVeraSans-Roman-31\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(76.1525 121.2875)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"138.315\" xlink:href=\"#mdcb9a16d08\" y=\"109.6890625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"138.315\" xlink:href=\"#m8a7627d3bb\" y=\"9.2490625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 20 -->\n",
       "      <defs>\n",
       "       <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "\" id=\"BitstreamVeraSans-Roman-32\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(131.9525 121.2875)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"194.115\" xlink:href=\"#mdcb9a16d08\" y=\"109.6890625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"194.115\" xlink:href=\"#m8a7627d3bb\" y=\"9.2490625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 30 -->\n",
       "      <defs>\n",
       "       <path d=\"M 40.578125 39.3125 \n",
       "Q 47.65625 37.796875 51.625 33 \n",
       "Q 55.609375 28.21875 55.609375 21.1875 \n",
       "Q 55.609375 10.40625 48.1875 4.484375 \n",
       "Q 40.765625 -1.421875 27.09375 -1.421875 \n",
       "Q 22.515625 -1.421875 17.65625 -0.515625 \n",
       "Q 12.796875 0.390625 7.625 2.203125 \n",
       "L 7.625 11.71875 \n",
       "Q 11.71875 9.328125 16.59375 8.109375 \n",
       "Q 21.484375 6.890625 26.8125 6.890625 \n",
       "Q 36.078125 6.890625 40.9375 10.546875 \n",
       "Q 45.796875 14.203125 45.796875 21.1875 \n",
       "Q 45.796875 27.640625 41.28125 31.265625 \n",
       "Q 36.765625 34.90625 28.71875 34.90625 \n",
       "L 20.21875 34.90625 \n",
       "L 20.21875 43.015625 \n",
       "L 29.109375 43.015625 \n",
       "Q 36.375 43.015625 40.234375 45.921875 \n",
       "Q 44.09375 48.828125 44.09375 54.296875 \n",
       "Q 44.09375 59.90625 40.109375 62.90625 \n",
       "Q 36.140625 65.921875 28.71875 65.921875 \n",
       "Q 24.65625 65.921875 20.015625 65.03125 \n",
       "Q 15.375 64.15625 9.8125 62.3125 \n",
       "L 9.8125 71.09375 \n",
       "Q 15.4375 72.65625 20.34375 73.4375 \n",
       "Q 25.25 74.21875 29.59375 74.21875 \n",
       "Q 40.828125 74.21875 47.359375 69.109375 \n",
       "Q 53.90625 64.015625 53.90625 55.328125 \n",
       "Q 53.90625 49.265625 50.4375 45.09375 \n",
       "Q 46.96875 40.921875 40.578125 39.3125 \n",
       "\" id=\"BitstreamVeraSans-Roman-33\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(187.7525 121.2875)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-33\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"249.915\" xlink:href=\"#mdcb9a16d08\" y=\"109.6890625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_10\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"249.915\" xlink:href=\"#m8a7627d3bb\" y=\"9.2490625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 40 -->\n",
       "      <defs>\n",
       "       <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"BitstreamVeraSans-Roman-34\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(243.5525 121.2875)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-34\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"305.715\" xlink:href=\"#mdcb9a16d08\" y=\"109.6890625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"305.715\" xlink:href=\"#m8a7627d3bb\" y=\"9.2490625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 50 -->\n",
       "      <defs>\n",
       "       <path d=\"M 10.796875 72.90625 \n",
       "L 49.515625 72.90625 \n",
       "L 49.515625 64.59375 \n",
       "L 19.828125 64.59375 \n",
       "L 19.828125 46.734375 \n",
       "Q 21.96875 47.46875 24.109375 47.828125 \n",
       "Q 26.265625 48.1875 28.421875 48.1875 \n",
       "Q 40.625 48.1875 47.75 41.5 \n",
       "Q 54.890625 34.8125 54.890625 23.390625 \n",
       "Q 54.890625 11.625 47.5625 5.09375 \n",
       "Q 40.234375 -1.421875 26.90625 -1.421875 \n",
       "Q 22.3125 -1.421875 17.546875 -0.640625 \n",
       "Q 12.796875 0.140625 7.71875 1.703125 \n",
       "L 7.71875 11.625 \n",
       "Q 12.109375 9.234375 16.796875 8.0625 \n",
       "Q 21.484375 6.890625 26.703125 6.890625 \n",
       "Q 35.15625 6.890625 40.078125 11.328125 \n",
       "Q 45.015625 15.765625 45.015625 23.390625 \n",
       "Q 45.015625 31 40.078125 35.4375 \n",
       "Q 35.15625 39.890625 26.703125 39.890625 \n",
       "Q 22.75 39.890625 18.8125 39.015625 \n",
       "Q 14.890625 38.140625 10.796875 36.28125 \n",
       "z\n",
       "\" id=\"BitstreamVeraSans-Roman-35\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(299.3525 121.2875)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-35\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 4 0 \n",
       "\" id=\"m7b906c4129\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.925\" xlink:href=\"#m7b906c4129\" y=\"12.0390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_14\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -4 0 \n",
       "\" id=\"m78bb1982b9\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"358.725\" xlink:href=\"#m78bb1982b9\" y=\"12.0390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_7\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(13.5625 14.7984375)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_15\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.925\" xlink:href=\"#m7b906c4129\" y=\"39.9390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_16\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"358.725\" xlink:href=\"#m78bb1982b9\" y=\"39.9390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- 5 -->\n",
       "      <g transform=\"translate(13.5625 42.6984375)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-35\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_17\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.925\" xlink:href=\"#m7b906c4129\" y=\"67.8390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_18\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"358.725\" xlink:href=\"#m78bb1982b9\" y=\"67.8390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- 10 -->\n",
       "      <g transform=\"translate(7.2 70.5984375)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_19\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.925\" xlink:href=\"#m7b906c4129\" y=\"95.7390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_20\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"358.725\" xlink:href=\"#m78bb1982b9\" y=\"95.7390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_10\">\n",
       "      <!-- 15 -->\n",
       "      <g transform=\"translate(7.2 98.4984375)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-35\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p93773408f1\">\n",
       "   <rect height=\"100.44\" width=\"334.8\" x=\"23.925\" y=\"9.2490625\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fea817f1b38>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "%matplotlib inline\n",
    "from matplotlib import pyplot as plt\n",
    "image = create_captcha(\"GENE\", shear=0.5, scale=0.6)\n",
    "plt.imshow(image, cmap='Greys')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "from skimage.measure import label, regionprops\n",
    "from skimage.filters import threshold_otsu\n",
    "from skimage.morphology import closing, square"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def segment_image(image):\n",
    "    # label will find subimages of connected non-black pixels\n",
    "    labeled_image = label(image>0.2, connectivity=1, background=0)\n",
    "    subimages = []\n",
    "    # regionprops splits up the subimages\n",
    "    for region in regionprops(labeled_image):\n",
    "        # Extract the subimage\n",
    "        start_x, start_y, end_x, end_y = region.bbox\n",
    "        subimages.append(image[start_x:end_x,start_y:end_y])\n",
    "    if len(subimages) == 0:\n",
    "        # No subimages found, so return the entire image\n",
    "        return [image,]\n",
    "    return subimages"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "subimages = segment_image(image)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "4"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "len(subimages)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (http://matplotlib.org/) -->\n",
       "<svg height=\"138pt\" version=\"1.1\" viewBox=\"0 0 583 138\" width=\"583pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <defs>\n",
       "  <style type=\"text/css\">\n",
       "*{stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:100000;}\n",
       "  </style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 138.354805 \n",
       "L 583.611166 138.354805 \n",
       "L 583.611166 0 \n",
       "L 0 0 \n",
       "L 0 138.354805 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 17.5625 117.47668 \n",
       "L 138.866848 117.47668 \n",
       "L 138.866848 7.2 \n",
       "L 17.5625 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p2a81244f7c)\">\n",
       "    <image height=\"111.0\" id=\"image1888b7f7ab\" width=\"122.0\" x=\"17.5625\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"6.4766798419\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 17.5625 7.2 \n",
       "L 138.866848 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 17.5625 117.47668 \n",
       "L 17.5625 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 17.5625 117.47668 \n",
       "L 138.866848 117.47668 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 138.866848 117.47668 \n",
       "L 138.866848 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 -4 \n",
       "\" id=\"m3bd9d9c767\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.0763339921\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_2\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 4 \n",
       "\" id=\"m2f00f3693c\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.0763339921\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <defs>\n",
       "       <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "\" id=\"BitstreamVeraSans-Roman-30\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(19.8950839921 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"45.1316699605\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"45.1316699605\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 2 -->\n",
       "      <defs>\n",
       "       <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "\" id=\"BitstreamVeraSans-Roman-32\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(41.9504199605 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"67.1870059289\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"67.1870059289\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 4 -->\n",
       "      <defs>\n",
       "       <path d=\"M 37.796875 64.3125 \n",
       "L 12.890625 25.390625 \n",
       "L 37.796875 25.390625 \n",
       "z\n",
       "M 35.203125 72.90625 \n",
       "L 47.609375 72.90625 \n",
       "L 47.609375 25.390625 \n",
       "L 58.015625 25.390625 \n",
       "L 58.015625 17.1875 \n",
       "L 47.609375 17.1875 \n",
       "L 47.609375 0 \n",
       "L 37.796875 0 \n",
       "L 37.796875 17.1875 \n",
       "L 4.890625 17.1875 \n",
       "L 4.890625 26.703125 \n",
       "z\n",
       "\" id=\"BitstreamVeraSans-Roman-34\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(64.0057559289 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-34\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"89.2423418972\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"89.2423418972\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 6 -->\n",
       "      <defs>\n",
       "       <path d=\"M 33.015625 40.375 \n",
       "Q 26.375 40.375 22.484375 35.828125 \n",
       "Q 18.609375 31.296875 18.609375 23.390625 \n",
       "Q 18.609375 15.53125 22.484375 10.953125 \n",
       "Q 26.375 6.390625 33.015625 6.390625 \n",
       "Q 39.65625 6.390625 43.53125 10.953125 \n",
       "Q 47.40625 15.53125 47.40625 23.390625 \n",
       "Q 47.40625 31.296875 43.53125 35.828125 \n",
       "Q 39.65625 40.375 33.015625 40.375 \n",
       "M 52.59375 71.296875 \n",
       "L 52.59375 62.3125 \n",
       "Q 48.875 64.0625 45.09375 64.984375 \n",
       "Q 41.3125 65.921875 37.59375 65.921875 \n",
       "Q 27.828125 65.921875 22.671875 59.328125 \n",
       "Q 17.53125 52.734375 16.796875 39.40625 \n",
       "Q 19.671875 43.65625 24.015625 45.921875 \n",
       "Q 28.375 48.1875 33.59375 48.1875 \n",
       "Q 44.578125 48.1875 50.953125 41.515625 \n",
       "Q 57.328125 34.859375 57.328125 23.390625 \n",
       "Q 57.328125 12.15625 50.6875 5.359375 \n",
       "Q 44.046875 -1.421875 33.015625 -1.421875 \n",
       "Q 20.359375 -1.421875 13.671875 8.265625 \n",
       "Q 6.984375 17.96875 6.984375 36.375 \n",
       "Q 6.984375 53.65625 15.1875 63.9375 \n",
       "Q 23.390625 74.21875 37.203125 74.21875 \n",
       "Q 40.921875 74.21875 44.703125 73.484375 \n",
       "Q 48.484375 72.75 52.59375 71.296875 \n",
       "\" id=\"BitstreamVeraSans-Roman-36\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(86.0610918972 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-36\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"111.297677866\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_10\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"111.297677866\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 8 -->\n",
       "      <defs>\n",
       "       <path d=\"M 31.78125 34.625 \n",
       "Q 24.75 34.625 20.71875 30.859375 \n",
       "Q 16.703125 27.09375 16.703125 20.515625 \n",
       "Q 16.703125 13.921875 20.71875 10.15625 \n",
       "Q 24.75 6.390625 31.78125 6.390625 \n",
       "Q 38.8125 6.390625 42.859375 10.171875 \n",
       "Q 46.921875 13.96875 46.921875 20.515625 \n",
       "Q 46.921875 27.09375 42.890625 30.859375 \n",
       "Q 38.875 34.625 31.78125 34.625 \n",
       "M 21.921875 38.8125 \n",
       "Q 15.578125 40.375 12.03125 44.71875 \n",
       "Q 8.5 49.078125 8.5 55.328125 \n",
       "Q 8.5 64.0625 14.71875 69.140625 \n",
       "Q 20.953125 74.21875 31.78125 74.21875 \n",
       "Q 42.671875 74.21875 48.875 69.140625 \n",
       "Q 55.078125 64.0625 55.078125 55.328125 \n",
       "Q 55.078125 49.078125 51.53125 44.71875 \n",
       "Q 48 40.375 41.703125 38.8125 \n",
       "Q 48.828125 37.15625 52.796875 32.3125 \n",
       "Q 56.78125 27.484375 56.78125 20.515625 \n",
       "Q 56.78125 9.90625 50.3125 4.234375 \n",
       "Q 43.84375 -1.421875 31.78125 -1.421875 \n",
       "Q 19.734375 -1.421875 13.25 4.234375 \n",
       "Q 6.78125 9.90625 6.78125 20.515625 \n",
       "Q 6.78125 27.484375 10.78125 32.3125 \n",
       "Q 14.796875 37.15625 21.921875 38.8125 \n",
       "M 18.3125 54.390625 \n",
       "Q 18.3125 48.734375 21.84375 45.5625 \n",
       "Q 25.390625 42.390625 31.78125 42.390625 \n",
       "Q 38.140625 42.390625 41.71875 45.5625 \n",
       "Q 45.3125 48.734375 45.3125 54.390625 \n",
       "Q 45.3125 60.0625 41.71875 63.234375 \n",
       "Q 38.140625 66.40625 31.78125 66.40625 \n",
       "Q 25.390625 66.40625 21.84375 63.234375 \n",
       "Q 18.3125 60.0625 18.3125 54.390625 \n",
       "\" id=\"BitstreamVeraSans-Roman-38\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(108.116427866 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-38\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"133.353013834\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"133.353013834\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 10 -->\n",
       "      <defs>\n",
       "       <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"BitstreamVeraSans-Roman-31\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(126.990513834 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 4 0 \n",
       "\" id=\"mea7bc08360\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"17.5625\" xlink:href=\"#mea7bc08360\" y=\"12.7138339921\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_14\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -4 0 \n",
       "\" id=\"md5b01cbf5e\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"138.866847826\" xlink:href=\"#md5b01cbf5e\" y=\"12.7138339921\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_7\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(7.2 15.4732089921)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_15\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"17.5625\" xlink:href=\"#mea7bc08360\" y=\"34.7691699605\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_16\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"138.866847826\" xlink:href=\"#md5b01cbf5e\" y=\"34.7691699605\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(7.2 37.5285449605)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_17\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"17.5625\" xlink:href=\"#mea7bc08360\" y=\"56.8245059289\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_18\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"138.866847826\" xlink:href=\"#md5b01cbf5e\" y=\"56.8245059289\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(7.2 59.5838809289)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-34\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_19\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"17.5625\" xlink:href=\"#mea7bc08360\" y=\"78.8798418972\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_20\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"138.866847826\" xlink:href=\"#md5b01cbf5e\" y=\"78.8798418972\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_10\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(7.2 81.6392168972)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-36\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_21\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"17.5625\" xlink:href=\"#mea7bc08360\" y=\"100.935177866\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_22\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"138.866847826\" xlink:href=\"#md5b01cbf5e\" y=\"100.935177866\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(7.2 103.694552866)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-38\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_2\">\n",
       "   <g id=\"patch_7\">\n",
       "    <path d=\"M 163.127717 112.881818 \n",
       "L 284.432065 112.881818 \n",
       "L 284.432065 11.794862 \n",
       "L 163.127717 11.794862 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p3a524317f3)\">\n",
       "    <image height=\"103.0\" id=\"image444ff33f1c\" width=\"122.0\" x=\"163.127717391\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"9.88181818182\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_8\">\n",
       "    <path d=\"M 163.127717 11.794862 \n",
       "L 284.432065 11.794862 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_9\">\n",
       "    <path d=\"M 163.127717 112.881818 \n",
       "L 163.127717 11.794862 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_10\">\n",
       "    <path d=\"M 163.127717 112.881818 \n",
       "L 284.432065 112.881818 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_11\">\n",
       "    <path d=\"M 284.432065 112.881818 \n",
       "L 284.432065 11.794862 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_3\">\n",
       "    <g id=\"xtick_7\">\n",
       "     <g id=\"line2d_23\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"168.182065217\" xlink:href=\"#m3bd9d9c767\" y=\"112.881818182\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_24\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"168.182065217\" xlink:href=\"#m2f00f3693c\" y=\"11.7948616601\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_12\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(165.000815217 124.480255682)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_8\">\n",
       "     <g id=\"line2d_25\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"188.399456522\" xlink:href=\"#m3bd9d9c767\" y=\"112.881818182\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_26\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"188.399456522\" xlink:href=\"#m2f00f3693c\" y=\"11.7948616601\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_13\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(185.218206522 124.480255682)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_9\">\n",
       "     <g id=\"line2d_27\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"208.616847826\" xlink:href=\"#m3bd9d9c767\" y=\"112.881818182\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_28\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"208.616847826\" xlink:href=\"#m2f00f3693c\" y=\"11.7948616601\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_14\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(205.435597826 124.480255682)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-34\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_10\">\n",
       "     <g id=\"line2d_29\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"228.83423913\" xlink:href=\"#m3bd9d9c767\" y=\"112.881818182\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_30\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"228.83423913\" xlink:href=\"#m2f00f3693c\" y=\"11.7948616601\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_15\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(225.65298913 124.480255682)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-36\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_11\">\n",
       "     <g id=\"line2d_31\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"249.051630435\" xlink:href=\"#m3bd9d9c767\" y=\"112.881818182\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_32\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"249.051630435\" xlink:href=\"#m2f00f3693c\" y=\"11.7948616601\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_16\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(245.870380435 124.480255682)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-38\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_12\">\n",
       "     <g id=\"line2d_33\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"269.269021739\" xlink:href=\"#m3bd9d9c767\" y=\"112.881818182\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_34\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"269.269021739\" xlink:href=\"#m2f00f3693c\" y=\"11.7948616601\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_17\">\n",
       "      <!-- 10 -->\n",
       "      <g transform=\"translate(262.906521739 124.480255682)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_4\">\n",
       "    <g id=\"ytick_6\">\n",
       "     <g id=\"line2d_35\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"163.127717391\" xlink:href=\"#mea7bc08360\" y=\"16.8492094862\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_36\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"284.432065217\" xlink:href=\"#md5b01cbf5e\" y=\"16.8492094862\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_18\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(152.765217391 19.6085844862)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_7\">\n",
       "     <g id=\"line2d_37\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"163.127717391\" xlink:href=\"#mea7bc08360\" y=\"37.0666007905\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_38\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"284.432065217\" xlink:href=\"#md5b01cbf5e\" y=\"37.0666007905\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_19\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(152.765217391 39.8259757905)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_8\">\n",
       "     <g id=\"line2d_39\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"163.127717391\" xlink:href=\"#mea7bc08360\" y=\"57.2839920949\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_40\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"284.432065217\" xlink:href=\"#md5b01cbf5e\" y=\"57.2839920949\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_20\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(152.765217391 60.0433670949)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-34\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_9\">\n",
       "     <g id=\"line2d_41\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"163.127717391\" xlink:href=\"#mea7bc08360\" y=\"77.5013833992\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_42\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"284.432065217\" xlink:href=\"#md5b01cbf5e\" y=\"77.5013833992\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_21\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(152.765217391 80.2607583992)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-36\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_10\">\n",
       "     <g id=\"line2d_43\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"163.127717391\" xlink:href=\"#mea7bc08360\" y=\"97.7187747036\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_44\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"284.432065217\" xlink:href=\"#md5b01cbf5e\" y=\"97.7187747036\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_22\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(152.765217391 100.478149704)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-38\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_3\">\n",
       "   <g id=\"patch_12\">\n",
       "    <path d=\"M 308.692935 108.993858 \n",
       "L 429.997283 108.993858 \n",
       "L 429.997283 15.682822 \n",
       "L 308.692935 15.682822 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p1e2fc56857)\">\n",
       "    <image height=\"95.0\" id=\"image9fa14b6bd5\" width=\"122.0\" x=\"308.692934783\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"13.9938583156\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_13\">\n",
       "    <path d=\"M 308.692935 15.682822 \n",
       "L 429.997283 15.682822 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_14\">\n",
       "    <path d=\"M 308.692935 108.993858 \n",
       "L 308.692935 15.682822 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_15\">\n",
       "    <path d=\"M 308.692935 108.993858 \n",
       "L 429.997283 108.993858 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_16\">\n",
       "    <path d=\"M 429.997283 108.993858 \n",
       "L 429.997283 15.682822 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_5\">\n",
       "    <g id=\"xtick_13\">\n",
       "     <g id=\"line2d_45\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"313.358486622\" xlink:href=\"#m3bd9d9c767\" y=\"108.993858316\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_46\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"313.358486622\" xlink:href=\"#m2f00f3693c\" y=\"15.6828215263\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_23\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(310.177236622 120.592295816)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_14\">\n",
       "     <g id=\"line2d_47\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"332.02069398\" xlink:href=\"#m3bd9d9c767\" y=\"108.993858316\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_48\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"332.02069398\" xlink:href=\"#m2f00f3693c\" y=\"15.6828215263\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_24\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(328.83944398 120.592295816)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_15\">\n",
       "     <g id=\"line2d_49\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"350.682901338\" xlink:href=\"#m3bd9d9c767\" y=\"108.993858316\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_50\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"350.682901338\" xlink:href=\"#m2f00f3693c\" y=\"15.6828215263\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_25\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(347.501651338 120.592295816)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-34\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_16\">\n",
       "     <g id=\"line2d_51\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"369.345108696\" xlink:href=\"#m3bd9d9c767\" y=\"108.993858316\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_52\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"369.345108696\" xlink:href=\"#m2f00f3693c\" y=\"15.6828215263\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_26\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(366.163858696 120.592295816)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-36\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_17\">\n",
       "     <g id=\"line2d_53\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"388.007316054\" xlink:href=\"#m3bd9d9c767\" y=\"108.993858316\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_54\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"388.007316054\" xlink:href=\"#m2f00f3693c\" y=\"15.6828215263\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_27\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(384.826066054 120.592295816)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-38\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_18\">\n",
       "     <g id=\"line2d_55\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"406.669523411\" xlink:href=\"#m3bd9d9c767\" y=\"108.993858316\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_56\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"406.669523411\" xlink:href=\"#m2f00f3693c\" y=\"15.6828215263\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_28\">\n",
       "      <!-- 10 -->\n",
       "      <g transform=\"translate(400.307023411 120.592295816)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_19\">\n",
       "     <g id=\"line2d_57\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"425.331730769\" xlink:href=\"#m3bd9d9c767\" y=\"108.993858316\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_58\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"425.331730769\" xlink:href=\"#m2f00f3693c\" y=\"15.6828215263\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_29\">\n",
       "      <!-- 12 -->\n",
       "      <g transform=\"translate(418.969230769 120.592295816)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_6\">\n",
       "    <g id=\"ytick_11\">\n",
       "     <g id=\"line2d_59\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"308.692934783\" xlink:href=\"#mea7bc08360\" y=\"20.3483733658\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_60\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"429.997282609\" xlink:href=\"#md5b01cbf5e\" y=\"20.3483733658\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_30\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(298.330434783 23.1077483658)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_12\">\n",
       "     <g id=\"line2d_61\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"308.692934783\" xlink:href=\"#mea7bc08360\" y=\"39.0105807236\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_62\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"429.997282609\" xlink:href=\"#md5b01cbf5e\" y=\"39.0105807236\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_31\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(298.330434783 41.7699557236)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_13\">\n",
       "     <g id=\"line2d_63\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"308.692934783\" xlink:href=\"#mea7bc08360\" y=\"57.6727880815\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_64\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"429.997282609\" xlink:href=\"#md5b01cbf5e\" y=\"57.6727880815\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_32\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(298.330434783 60.4321630815)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-34\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_14\">\n",
       "     <g id=\"line2d_65\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"308.692934783\" xlink:href=\"#mea7bc08360\" y=\"76.3349954393\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_66\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"429.997282609\" xlink:href=\"#md5b01cbf5e\" y=\"76.3349954393\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_33\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(298.330434783 79.0943704393)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-36\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_15\">\n",
       "     <g id=\"line2d_67\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"308.692934783\" xlink:href=\"#mea7bc08360\" y=\"94.9972027972\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_68\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"429.997282609\" xlink:href=\"#md5b01cbf5e\" y=\"94.9972027972\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_34\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(298.330434783 97.7565777972)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-38\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       "  <g id=\"axes_4\">\n",
       "   <g id=\"patch_17\">\n",
       "    <path d=\"M 454.258152 117.47668 \n",
       "L 575.5625 117.47668 \n",
       "L 575.5625 7.2 \n",
       "L 454.258152 7.2 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#pf5e172381a)\">\n",
       "    <image height=\"111.0\" id=\"imageaba932d3f9\" width=\"123.0\" x=\"454.258152174\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"6.4766798419\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_18\">\n",
       "    <path d=\"M 454.258152 7.2 \n",
       "L 575.5625 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_19\">\n",
       "    <path d=\"M 454.258152 117.47668 \n",
       "L 454.258152 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_20\">\n",
       "    <path d=\"M 454.258152 117.47668 \n",
       "L 575.5625 117.47668 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_21\">\n",
       "    <path d=\"M 575.5625 117.47668 \n",
       "L 575.5625 7.2 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_7\">\n",
       "    <g id=\"xtick_20\">\n",
       "     <g id=\"line2d_69\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"459.771986166\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_70\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"459.771986166\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_35\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(456.590736166 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_21\">\n",
       "     <g id=\"line2d_71\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"481.827322134\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_72\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"481.827322134\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_36\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(478.646072134 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_22\">\n",
       "     <g id=\"line2d_73\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"503.882658103\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_74\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"503.882658103\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_37\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(500.701408103 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-34\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_23\">\n",
       "     <g id=\"line2d_75\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"525.937994071\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_76\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"525.937994071\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_38\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(522.756744071 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-36\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_24\">\n",
       "     <g id=\"line2d_77\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"547.99333004\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_78\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"547.99333004\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_39\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(544.81208004 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-38\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_25\">\n",
       "     <g id=\"line2d_79\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"570.048666008\" xlink:href=\"#m3bd9d9c767\" y=\"117.476679842\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_80\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"570.048666008\" xlink:href=\"#m2f00f3693c\" y=\"7.2\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_40\">\n",
       "      <!-- 10 -->\n",
       "      <g transform=\"translate(563.686166008 129.075117342)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_8\">\n",
       "    <g id=\"ytick_16\">\n",
       "     <g id=\"line2d_81\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"454.258152174\" xlink:href=\"#mea7bc08360\" y=\"12.7138339921\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_82\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"575.5625\" xlink:href=\"#md5b01cbf5e\" y=\"12.7138339921\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_41\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(443.895652174 15.4732089921)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_17\">\n",
       "     <g id=\"line2d_83\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"454.258152174\" xlink:href=\"#mea7bc08360\" y=\"34.7691699605\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_84\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"575.5625\" xlink:href=\"#md5b01cbf5e\" y=\"34.7691699605\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_42\">\n",
       "      <!-- 2 -->\n",
       "      <g transform=\"translate(443.895652174 37.5285449605)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_18\">\n",
       "     <g id=\"line2d_85\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"454.258152174\" xlink:href=\"#mea7bc08360\" y=\"56.8245059289\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_86\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"575.5625\" xlink:href=\"#md5b01cbf5e\" y=\"56.8245059289\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_43\">\n",
       "      <!-- 4 -->\n",
       "      <g transform=\"translate(443.895652174 59.5838809289)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-34\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_19\">\n",
       "     <g id=\"line2d_87\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"454.258152174\" xlink:href=\"#mea7bc08360\" y=\"78.8798418972\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_88\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"575.5625\" xlink:href=\"#md5b01cbf5e\" y=\"78.8798418972\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_44\">\n",
       "      <!-- 6 -->\n",
       "      <g transform=\"translate(443.895652174 81.6392168972)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-36\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_20\">\n",
       "     <g id=\"line2d_89\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"454.258152174\" xlink:href=\"#mea7bc08360\" y=\"100.935177866\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_90\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"575.5625\" xlink:href=\"#md5b01cbf5e\" y=\"100.935177866\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_45\">\n",
       "      <!-- 8 -->\n",
       "      <g transform=\"translate(443.895652174 103.694552866)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-38\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p3a524317f3\">\n",
       "   <rect height=\"101.086956522\" width=\"121.304347826\" x=\"163.127717391\" y=\"11.7948616601\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"pf5e172381a\">\n",
       "   <rect height=\"110.276679842\" width=\"121.304347826\" x=\"454.258152174\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p2a81244f7c\">\n",
       "   <rect height=\"110.276679842\" width=\"121.304347826\" x=\"17.5625\" y=\"7.2\"/>\n",
       "  </clipPath>\n",
       "  <clipPath id=\"p1e2fc56857\">\n",
       "   <rect height=\"93.3110367893\" width=\"121.304347826\" x=\"308.692934783\" y=\"15.6828215263\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fea7b9ae550>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "f, axes = plt.subplots(1, len(subimages), figsize=(10, 3)) \n",
    "for i in range(len(subimages)): \n",
    "    axes[i].imshow(subimages[i], cmap=\"gray\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "from sklearn.utils import check_random_state\n",
    "random_state = check_random_state(14) \n",
    "letters = list(\"ABCDEFGHIJKLMNOPQRSTUVWXYZ\")\n",
    "assert len(letters) == 26\n",
    "shear_values = np.arange(0, 0.8, 0.05)\n",
    "scale_values = np.arange(0.9, 1.1, 0.1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def generate_sample(random_state=None): \n",
    "    random_state = check_random_state(random_state) \n",
    "    letter = random_state.choice(letters) \n",
    "    shear = random_state.choice(shear_values)\n",
    "    scale = random_state.choice(scale_values)\n",
    "    return create_captcha(letter, shear=shear, size=(30, 30), scale=scale), letters.index(letter)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The target for this image is: L\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       "  \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Created with matplotlib (http://matplotlib.org/) -->\n",
       "<svg height=\"251pt\" version=\"1.1\" viewBox=\"0 0 254 251\" width=\"254pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       " <defs>\n",
       "  <style type=\"text/css\">\n",
       "*{stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:100000;}\n",
       "  </style>\n",
       " </defs>\n",
       " <g id=\"figure_1\">\n",
       "  <g id=\"patch_1\">\n",
       "   <path d=\"M 0 251.983854 \n",
       "L 254.325 251.983854 \n",
       "L 254.325 0 \n",
       "L 0 0 \n",
       "L 0 251.983854 \n",
       "z\n",
       "\" style=\"fill:none;\"/>\n",
       "  </g>\n",
       "  <g id=\"axes_1\">\n",
       "   <g id=\"patch_2\">\n",
       "    <path d=\"M 23.925 231.105729 \n",
       "L 247.125 231.105729 \n",
       "L 247.125 7.905729 \n",
       "L 23.925 7.905729 \n",
       "z\n",
       "\" style=\"fill:#ffffff;\"/>\n",
       "   </g>\n",
       "   <g clip-path=\"url(#p2769870302)\">\n",
       "    <image height=\"224.0\" id=\"image1af5f1a0ce\" width=\"224.0\" x=\"23.925\" xlink:href=\"data:image/png;base64,\n",
       "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\" y=\"7.10572916667\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_3\">\n",
       "    <path d=\"M 23.925 7.905729 \n",
       "L 247.125 7.905729 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_4\">\n",
       "    <path d=\"M 23.925 231.105729 \n",
       "L 23.925 7.905729 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_5\">\n",
       "    <path d=\"M 23.925 231.105729 \n",
       "L 247.125 231.105729 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"patch_6\">\n",
       "    <path d=\"M 247.125 231.105729 \n",
       "L 247.125 7.905729 \n",
       "\" style=\"fill:none;stroke:#000000;stroke-linecap:square;stroke-linejoin:miter;\"/>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_1\">\n",
       "    <g id=\"xtick_1\">\n",
       "     <g id=\"line2d_1\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 -4 \n",
       "\" id=\"mce92a3c141\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"28.0583333333\" xlink:href=\"#mce92a3c141\" y=\"231.105729167\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_2\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 0 4 \n",
       "\" id=\"md7515f072f\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"28.0583333333\" xlink:href=\"#md7515f072f\" y=\"7.90572916667\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_1\">\n",
       "      <!-- 0 -->\n",
       "      <defs>\n",
       "       <path d=\"M 31.78125 66.40625 \n",
       "Q 24.171875 66.40625 20.328125 58.90625 \n",
       "Q 16.5 51.421875 16.5 36.375 \n",
       "Q 16.5 21.390625 20.328125 13.890625 \n",
       "Q 24.171875 6.390625 31.78125 6.390625 \n",
       "Q 39.453125 6.390625 43.28125 13.890625 \n",
       "Q 47.125 21.390625 47.125 36.375 \n",
       "Q 47.125 51.421875 43.28125 58.90625 \n",
       "Q 39.453125 66.40625 31.78125 66.40625 \n",
       "M 31.78125 74.21875 \n",
       "Q 44.046875 74.21875 50.515625 64.515625 \n",
       "Q 56.984375 54.828125 56.984375 36.375 \n",
       "Q 56.984375 17.96875 50.515625 8.265625 \n",
       "Q 44.046875 -1.421875 31.78125 -1.421875 \n",
       "Q 19.53125 -1.421875 13.0625 8.265625 \n",
       "Q 6.59375 17.96875 6.59375 36.375 \n",
       "Q 6.59375 54.828125 13.0625 64.515625 \n",
       "Q 19.53125 74.21875 31.78125 74.21875 \n",
       "\" id=\"BitstreamVeraSans-Roman-30\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(24.8770833333 242.704166667)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_2\">\n",
       "     <g id=\"line2d_3\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"69.3916666667\" xlink:href=\"#mce92a3c141\" y=\"231.105729167\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_4\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"69.3916666667\" xlink:href=\"#md7515f072f\" y=\"7.90572916667\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_2\">\n",
       "      <!-- 5 -->\n",
       "      <defs>\n",
       "       <path d=\"M 10.796875 72.90625 \n",
       "L 49.515625 72.90625 \n",
       "L 49.515625 64.59375 \n",
       "L 19.828125 64.59375 \n",
       "L 19.828125 46.734375 \n",
       "Q 21.96875 47.46875 24.109375 47.828125 \n",
       "Q 26.265625 48.1875 28.421875 48.1875 \n",
       "Q 40.625 48.1875 47.75 41.5 \n",
       "Q 54.890625 34.8125 54.890625 23.390625 \n",
       "Q 54.890625 11.625 47.5625 5.09375 \n",
       "Q 40.234375 -1.421875 26.90625 -1.421875 \n",
       "Q 22.3125 -1.421875 17.546875 -0.640625 \n",
       "Q 12.796875 0.140625 7.71875 1.703125 \n",
       "L 7.71875 11.625 \n",
       "Q 12.109375 9.234375 16.796875 8.0625 \n",
       "Q 21.484375 6.890625 26.703125 6.890625 \n",
       "Q 35.15625 6.890625 40.078125 11.328125 \n",
       "Q 45.015625 15.765625 45.015625 23.390625 \n",
       "Q 45.015625 31 40.078125 35.4375 \n",
       "Q 35.15625 39.890625 26.703125 39.890625 \n",
       "Q 22.75 39.890625 18.8125 39.015625 \n",
       "Q 14.890625 38.140625 10.796875 36.28125 \n",
       "z\n",
       "\" id=\"BitstreamVeraSans-Roman-35\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(66.2104166667 242.704166667)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-35\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_3\">\n",
       "     <g id=\"line2d_5\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"110.725\" xlink:href=\"#mce92a3c141\" y=\"231.105729167\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_6\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"110.725\" xlink:href=\"#md7515f072f\" y=\"7.90572916667\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_3\">\n",
       "      <!-- 10 -->\n",
       "      <defs>\n",
       "       <path d=\"M 12.40625 8.296875 \n",
       "L 28.515625 8.296875 \n",
       "L 28.515625 63.921875 \n",
       "L 10.984375 60.40625 \n",
       "L 10.984375 69.390625 \n",
       "L 28.421875 72.90625 \n",
       "L 38.28125 72.90625 \n",
       "L 38.28125 8.296875 \n",
       "L 54.390625 8.296875 \n",
       "L 54.390625 0 \n",
       "L 12.40625 0 \n",
       "z\n",
       "\" id=\"BitstreamVeraSans-Roman-31\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(104.3625 242.704166667)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_4\">\n",
       "     <g id=\"line2d_7\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"152.058333333\" xlink:href=\"#mce92a3c141\" y=\"231.105729167\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_8\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"152.058333333\" xlink:href=\"#md7515f072f\" y=\"7.90572916667\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_4\">\n",
       "      <!-- 15 -->\n",
       "      <g transform=\"translate(145.695833333 242.704166667)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-35\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_5\">\n",
       "     <g id=\"line2d_9\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"193.391666667\" xlink:href=\"#mce92a3c141\" y=\"231.105729167\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_10\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"193.391666667\" xlink:href=\"#md7515f072f\" y=\"7.90572916667\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_5\">\n",
       "      <!-- 20 -->\n",
       "      <defs>\n",
       "       <path d=\"M 19.1875 8.296875 \n",
       "L 53.609375 8.296875 \n",
       "L 53.609375 0 \n",
       "L 7.328125 0 \n",
       "L 7.328125 8.296875 \n",
       "Q 12.9375 14.109375 22.625 23.890625 \n",
       "Q 32.328125 33.6875 34.8125 36.53125 \n",
       "Q 39.546875 41.84375 41.421875 45.53125 \n",
       "Q 43.3125 49.21875 43.3125 52.78125 \n",
       "Q 43.3125 58.59375 39.234375 62.25 \n",
       "Q 35.15625 65.921875 28.609375 65.921875 \n",
       "Q 23.96875 65.921875 18.8125 64.3125 \n",
       "Q 13.671875 62.703125 7.8125 59.421875 \n",
       "L 7.8125 69.390625 \n",
       "Q 13.765625 71.78125 18.9375 73 \n",
       "Q 24.125 74.21875 28.421875 74.21875 \n",
       "Q 39.75 74.21875 46.484375 68.546875 \n",
       "Q 53.21875 62.890625 53.21875 53.421875 \n",
       "Q 53.21875 48.921875 51.53125 44.890625 \n",
       "Q 49.859375 40.875 45.40625 35.40625 \n",
       "Q 44.1875 33.984375 37.640625 27.21875 \n",
       "Q 31.109375 20.453125 19.1875 8.296875 \n",
       "\" id=\"BitstreamVeraSans-Roman-32\"/>\n",
       "      </defs>\n",
       "      <g transform=\"translate(187.029166667 242.704166667)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"xtick_6\">\n",
       "     <g id=\"line2d_11\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"234.725\" xlink:href=\"#mce92a3c141\" y=\"231.105729167\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_12\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"234.725\" xlink:href=\"#md7515f072f\" y=\"7.90572916667\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_6\">\n",
       "      <!-- 25 -->\n",
       "      <g transform=\"translate(228.3625 242.704166667)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-35\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "   <g id=\"matplotlib.axis_2\">\n",
       "    <g id=\"ytick_1\">\n",
       "     <g id=\"line2d_13\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L 4 0 \n",
       "\" id=\"m190eb01d57\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.925\" xlink:href=\"#m190eb01d57\" y=\"12.0390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_14\">\n",
       "      <defs>\n",
       "       <path d=\"M 0 0 \n",
       "L -4 0 \n",
       "\" id=\"m5be81c2463\" style=\"stroke:#000000;stroke-width:0.5;\"/>\n",
       "      </defs>\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"247.125\" xlink:href=\"#m5be81c2463\" y=\"12.0390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_7\">\n",
       "      <!-- 0 -->\n",
       "      <g transform=\"translate(13.5625 14.7984375)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_2\">\n",
       "     <g id=\"line2d_15\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.925\" xlink:href=\"#m190eb01d57\" y=\"53.3723958333\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_16\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"247.125\" xlink:href=\"#m5be81c2463\" y=\"53.3723958333\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_8\">\n",
       "      <!-- 5 -->\n",
       "      <g transform=\"translate(13.5625 56.1317708333)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-35\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_3\">\n",
       "     <g id=\"line2d_17\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.925\" xlink:href=\"#m190eb01d57\" y=\"94.7057291667\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_18\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"247.125\" xlink:href=\"#m5be81c2463\" y=\"94.7057291667\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_9\">\n",
       "      <!-- 10 -->\n",
       "      <g transform=\"translate(7.2 97.4651041667)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_4\">\n",
       "     <g id=\"line2d_19\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.925\" xlink:href=\"#m190eb01d57\" y=\"136.0390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_20\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"247.125\" xlink:href=\"#m5be81c2463\" y=\"136.0390625\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_10\">\n",
       "      <!-- 15 -->\n",
       "      <g transform=\"translate(7.2 138.7984375)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-31\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-35\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_5\">\n",
       "     <g id=\"line2d_21\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.925\" xlink:href=\"#m190eb01d57\" y=\"177.372395833\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_22\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"247.125\" xlink:href=\"#m5be81c2463\" y=\"177.372395833\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_11\">\n",
       "      <!-- 20 -->\n",
       "      <g transform=\"translate(7.2 180.131770833)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-30\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "    <g id=\"ytick_6\">\n",
       "     <g id=\"line2d_23\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"23.925\" xlink:href=\"#m190eb01d57\" y=\"218.705729167\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"line2d_24\">\n",
       "      <g>\n",
       "       <use style=\"stroke:#000000;stroke-width:0.5;\" x=\"247.125\" xlink:href=\"#m5be81c2463\" y=\"218.705729167\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "     <g id=\"text_12\">\n",
       "      <!-- 25 -->\n",
       "      <g transform=\"translate(7.2 221.465104167)scale(0.1 -0.1)\">\n",
       "       <use xlink:href=\"#BitstreamVeraSans-Roman-32\"/>\n",
       "       <use x=\"63.623046875\" xlink:href=\"#BitstreamVeraSans-Roman-35\"/>\n",
       "      </g>\n",
       "     </g>\n",
       "    </g>\n",
       "   </g>\n",
       "  </g>\n",
       " </g>\n",
       " <defs>\n",
       "  <clipPath id=\"p2769870302\">\n",
       "   <rect height=\"223.2\" width=\"223.2\" x=\"23.925\" y=\"7.90572916667\"/>\n",
       "  </clipPath>\n",
       " </defs>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7fea792e3240>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "image, target = generate_sample(random_state) \n",
    "plt.imshow(image, cmap=\"Greys\") \n",
    "print(\"The target for this image is: {0}\".format(letters[target]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "dataset, targets = zip(*(generate_sample(random_state) for i in range(1000)))\n",
    "dataset = np.array([tf.resize(segment_image(sample)[0], (20, 20)) for sample in dataset])\n",
    "dataset = np.array(dataset, dtype='float') \n",
    "targets = np.array(targets)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "from sklearn.preprocessing import OneHotEncoder \n",
    "onehot = OneHotEncoder() \n",
    "y = onehot.fit_transform(targets.reshape(targets.shape[0],1))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "y = y.todense()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "X = dataset.reshape((dataset.shape[0], dataset.shape[1] * dataset.shape[2]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "from sklearn.model_selection import train_test_split \n",
    "X_train, X_test, y_train, y_test = train_test_split(X, y, train_size=0.9)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Classification\n",
    "\n",
    "Here is the new Keras-based neural network"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Using TensorFlow backend.\n"
     ]
    }
   ],
   "source": [
    "from keras.layers import Dense\n",
    "from keras.models import Sequential"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "hidden_layer = Dense(100, input_dim=X_train.shape[1])\n",
    "output_layer = Dense(y_train.shape[1])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "model = Sequential(layers=[hidden_layer, output_layer])\n",
    "model.compile(loss='mean_squared_error', optimizer='adam', metrics=['accuracy'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<keras.callbacks.History at 0x7fea55f6e6d8>"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model.fit(X_train, y_train, nb_epoch=1000, verbose=False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1.0"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "y_pred = model.predict(X_test)\n",
    "\n",
    "from sklearn.metrics import f1_score\n",
    "\n",
    "\n",
    "f1_score(y_pred=y_pred.argmax(axis=1), y_true=y_test.argmax(axis=1), average='macro')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "             precision    recall  f1-score   support\n",
      "\n",
      "          0       1.00      1.00      1.00         4\n",
      "          1       1.00      1.00      1.00         3\n",
      "          2       1.00      1.00      1.00         4\n",
      "          3       1.00      1.00      1.00         3\n",
      "          4       1.00      1.00      1.00         6\n",
      "          5       1.00      1.00      1.00         4\n",
      "          6       1.00      1.00      1.00         2\n",
      "          7       1.00      1.00      1.00         4\n",
      "          8       1.00      1.00      1.00         8\n",
      "          9       1.00      1.00      1.00         3\n",
      "         10       1.00      1.00      1.00         3\n",
      "         11       1.00      1.00      1.00         7\n",
      "         12       1.00      1.00      1.00         7\n",
      "         13       1.00      1.00      1.00         4\n",
      "         14       1.00      1.00      1.00         3\n",
      "         15       1.00      1.00      1.00         4\n",
      "         16       1.00      1.00      1.00         3\n",
      "         17       1.00      1.00      1.00         6\n",
      "         18       1.00      1.00      1.00         2\n",
      "         19       1.00      1.00      1.00         2\n",
      "         20       1.00      1.00      1.00         3\n",
      "         21       1.00      1.00      1.00         5\n",
      "         22       1.00      1.00      1.00         2\n",
      "         23       1.00      1.00      1.00         4\n",
      "         24       1.00      1.00      1.00         1\n",
      "         25       1.00      1.00      1.00         3\n",
      "\n",
      "avg / total       1.00      1.00      1.00       100\n",
      "\n"
     ]
    }
   ],
   "source": [
    "from sklearn.metrics import classification_report\n",
    "\n",
    "print(classification_report(y_pred=y_pred.argmax(axis=1),\n",
    "                            y_true=y_test.argmax(axis=1)))"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
